1. Field of the Invention
The present invention generally relates to data processing. More particularly, the present invention relates to techniques for benchmarking the performance of multiple logical partitions in a logically partitioned computer system.
2. Description of the Related Art
Virtualization is a technique used to divide a collection of physical computing resources into one or more logical partitions. In a virtualized environment, the computing resources of many systems and data storage units may be gathered into “pools” of computing power that can easily be allocated as demands on the system change. From such a “pool,” any number of partitions may be defined. Thus, virtualization provides an abstraction of computing power, data storage, network communications, and other computing resources.
In a virtualized environment, each partition behaves in some respects as a separate computer system. Virtualization allows users to derive more value from a computer system by increasing both system utilization and throughput. Moreover, because each partition is an abstraction of a physical computer system, the resources allocated to a given partition may easily be modified. Similarly, the physical resources underlying the partitions may be changed or expanded. Thus, a logically partitioned environment may be modified from either side (i.e., from the partition side or the hardware side) by modifying a logical partition or by modifying the underlying physical resources available to the virtualized environment.
As virtualized systems have become more prevalent, a need has arisen to demonstrate and characterize the performance of a virtualized environment. For example, a seller or manufacturer of a virtualized system may wish to provide a demonstration to potential buyers. Such a demonstration may include performing a workload simulation using the virtualized system. Similarly, potential purchasers may require certain, provable performance characteristics of the virtualized system. To be meaningful, a benchmark, or system workload simulation performed against a virtualized system, must provide dynamic, repeatable, and verifiable measures of performance both for an individual partition, and for the system as a whole.
However, unlike current techniques used to perform workload simulations on a discrete computer system, virtualized environments require that multiple partitions participate in a workload simulation concurrently. Further, the workloads experienced by individual partitions should be able to be dynamically changed throughout a simulation. At the same time, system performance analysis (i.e. benchmarks) requires a highly controlled environment, where dynamic fluctuations in the workload processed by each partition may be carefully regulated and recorded. Current techniques for system performance benchmarking, however, have been largely ad-hoc attempts to correlate multiple workload simulations performed by a set of logical partitions. For example, an administrator may configure each partition to run a workload simulation individually. From this, some measure of overall system performance may be estimated.
At best however, this approach merely guesses at the actual performance of a virtualized system from a series of disconnected workload simulations. At worst, this approach devolves into a cumbersome task that forces a system administrator to attempt to coordinate the performance of workload simulations running on each partition, and then attempt some meaningful interpretation or measure of overall system performance. In any event, this ad-hoc approach of running independent simulations in multiple partitions fails to provide dynamic, repeatable, and verifiable measures of performance for virtualized environments.
Accordingly, there remains a need for workload simulation and benchmarking tools to evaluate the performance of a logically partitioned system.